1. Technical Field
The present invention relates to data communication networking devices, more particularly to an arrangement for forwarding frames in a cascaded scheme.
2. Background Art
Users of networking devices demand flexibility and scalability. To address this need, manufacturers have developed modular architectures that enable cascading of identical networking devices or network switch modules. By cascading these equipment (or components) in a loop, port density can be readily increased without redesign or development of costly interfaces.
A cascaded arrangement is shown in FIG. 4, whereby three network switch modules 101, 103, and 105 are linked so that a received frame may be circulated to the proper output port. With all cascaded loop configurations, a received frame may circulate indefinitely if an appropriate output port cannot be determined among the ports of the three network switch modules 101, 103, and 105. This results in inefficient use of the network switch modules"" resources; in particular, the circulating frame reduces the effective bandwidth of the system in that resources consumed by this frame could have been utilized to forward other frames.
It is desirable to minimize the number of xe2x80x9chopsxe2x80x9d that the frame has to make when removing it from indefinite circulation; i.e., reducing the number of network switch modules that has to process the frame. In one conventional approach, the hop count value is embedded in the frame and is updated by each of the network switch modules as the frame is transferred among them. Also, each network switch module is aware of the total number of network switch modules constituting the loop. When a frame is first received by a network switch module, this originating module writes a hop count value of, for example, 1 into the received frame prior to forwarding it to an adjacent network switch module. Subsequent network switch modules are responsible for incrementing the hop count value as the frame traverses the cascaded loop. At each network switch module, the frame""s hop count value is examined to check whether the hop count value has exceeded a threshold value, namely the total number of network switch modules. Once the threshold value is exceeded, the frame is no longer forwarded.
Under this conventional scheme, each of the network switch modules within the cascaded loop is assigned a unique identifier. For example, in FIG. 4, network switch module 101 is assigned a device identification number (DEV_ID) of 5. Similarly, network switch modules 103 and 105 have DEV_IDs of 3 and 6, respectively. These unique identifiers are typically employed both to establish the cascaded loop and to ensure proper forwarding of the frame. Accordingly each network switch module is aware of its predecessor and successor switch modules through their DEV_IDs. For purposes of explanation, it is assumed that device 101 receives a frame that is not destined for any one of its output ports. Module 101 then places a hop count value of 1 in the frame and forwards the frame to an adjacent network switch module 103. If network switch module 103 determines that its output ports are not the proper ports to send the frame, it increments the hop count value of the frame to 2 and forwards the frame to network switch module 105. Now if the frame is not destined for any one of the output ports of this last network switch module 105, then the network switch module 105 increments the hop count value to 3 and loops it back to the originating network switch module 101. At this point, the originating network switch module 101 notes that the hop count value equals the total number of cascaded network switch modules and consequently decides not to forward the frame. In other words, the network switch module 101 recognizes that it should take the frame out of circulation based upon the comparison of the hop count value and the total number of modules.
One major disadvantage with the above approach is that the frame is needlessly transferred back to the originating network switch module, resulting in an additional hop. For example, if xe2x80x9cnxe2x80x9d number of network switch modules form the cascaded loop, then n number hops are required. Thus, the effective bandwidth of the expansion port is reduced. Moreover, the design complexity is significantly increased because the frame needs to be modified at each network switch module, thereby, requiring additional logic.
There is a need for an arrangement that efficiently forwards frames in a cascaded scheme, and thereby increases the bandwidth efficiency of the cascade ports. There is also a need to remove a frame from circulation within a cascaded loop without introducing additional design complexity.
These and other needs are attained by the present invention, where a frame forwarding logic selectively forwards a frame based upon an embedded identifier of the frame and a sequence identifier of a network switch module. Under this arrangement, the number of hops is minimized because the frame is not forwarded back to an originating network switch module. Further, the embedded identifier is not altered by subsequent network switch modules in the cascaded loop. Thus, design complexity is not augmented.
According to one aspect of the present invention, a network switching system for transferring a frame comprises a plurality of network switch modules connected in a prescribed cascaded sequence. Each network switch module has a corresponding sequence identifier and frame forwarding logic. The network switch module is configured for selectively forwarding a first frame that is received from a corresponding preceding one of the network switch modules in the prescribed cascaded sequence. The first frame has an embedded identifier, which identifies an initial one of the network switch modules as initiating transmission of the first frame among the network switch modules. The frame forwarding logic selectively forwards the first frame to a corresponding subsequent one of the network switch modules in the prescribed cascaded sequence based on the corresponding sequence identifier and the embedded identifier. An expansion bus is used to successively transmit the first frame from the initial one network switch modules according to the prescribed cascaded sequence. Hence, the number of hops is minimized, thereby, providing an increased in bandwidth efficiency of the cascade ports. Also, under this arrangement, the frame can be selectively passed without having to be modified at each network switch module, which minimizes design complexity.
Still another aspect of the present invention provides a method for transferring a frame among a plurality of network switch modules. The method comprises assigning a sequence identifier to each of the plurality of network switch modules according to a prescribed cascaded sequence. The frame is output from a first of the plurality of network switch modules to a successor one of the plurality of network switch modules. The frame includes an embedded identifier corresponding to the sequence identifier of the first network switch module. The method further includes selectively forwarding the frame in the successor network switch module to another successor one of the network switch modules in the prescribed cascaded sequence, based on the corresponding sequence identifier and the embedded identifier. With this method, the frame can be selectively passed without having to be modified at each network switch module, thereby minimizing design complexity. In addition, other switch modules can be added with minimal modification to existing switch modules.
Additional advantages and novel features of the invention will be set forth in part in the description which follows, and in part may become apparent to those skilled in the art upon examination of the following or may be learned by practice of the invention. The advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.